Studien- und Diplomarbeiten bei
Peter Thole

Eine genaue Aufgabenstellung von Studien- und Diplomarbeiten lä▀t sich am besten in einem Gespräch finden. Dann können Interessen und Vorkenntnisse, Zeitraum usw. besser berücksichtigt werden. Es ist auch m÷glich Arbeiten im Team oder in enger Zusammenarbeit mit anderen durchzuführen.

Also: einfach mal bei mir vorbeikommen.


Themenvorschläge

Ein paar konkrete Themenvorschläge findet ihr hier. Zur genauen Themenabsprache, auch des Umfangs, ob als Studien- oder Diplomarbeit, ob im Team oder alleine - s.o.

Bestimmung von Ausfⁿhrungsprofilen von VHDL-Prozessen

Aufwand:
Studienarbeit
Charakter der Arbeit:
Praktisch: Programmierung
Ein Prozess ist in der Hardwarebeschreibungssprache VHDL die M÷glichkeit einen Algorithmus, also ein sequentielles Verhalten aufzuschreiben. Wenn ich zu diesem Algorithmus eine digitale Schaltung entwerfen will, ist es sinnvoll m÷glichst viele Informationen ⁿber den Algorithmus und seinen Einsatz zu erhalten. Zu diesem Zweck soll in dieser Arbeit ein feingranulares Profiling-Werkzeug implementiert werden, welches zu jedem Grundblock des VHDL Prozesses die AufrufhΣufigkeit bestimmt. Dies soll dadurch erreicht werden, da▀ automatisiert ZΣhler in den Programmtext eingefⁿgt werden und der Prozess dann mit einer Beispiellast getestet wird. Die Implementierung soll in C++ erfolgen. Es existiert bereits ein derartiges Tool fⁿr C-Programme, an das man sich bei der Arbeit anlehnen kann.

Timing-Simulation von plazierten und verdrahteten FPGA's in einer VHDL-Umgebung

Aufwand:
Studienarbeit
Charakter der Arbeit:
Praktisch: Programmierung und Experimente
Der Trend beim Entwurf integrierter Schaltungen geht ganz stark in Richtung Verwendung von Hardwarbeschreibungssprachen (VHDL) zur Synthese und Simulation. Die Ergebnisse dieser Arbeit sollen es erm÷glichen Entwurfsergebnisse von XILINX FPGA's (anwenderprogrammierbare IC's der Firma XILINX) so umzuwandeln, da▀ sie in einer rein sprachlichen Umgebung simuliert werden k÷nnen. Dafⁿr soll ein Tool entwickelt werden, das die Netzliste in eine Strukturelle VHDL-Beschreibung umsetzt. Zum Einsatz kommen k÷nnen dabei Compilerbauwerkzeuge wie Lex und Yacc.

Evaluierung eines FlΣchenmodells fⁿr die Verdrahtbarkeit von FPGA's

Aufwand:
Studienarbeit
Charakter der Arbeit:
Technisch
Bei dem Entwurf einer integrierten Schaltung, z.B. in einem Standardzellenentwurf, wird ein gro▀er Teil der FlΣche auf dem Chip fⁿr die Verdrahtung verwendet. Dabei gibt es die Beobachtung, und dies gilt besonders fⁿr immer kleinere Strukturen, da▀ die ben÷tigte VerdrahtungsflΣche ganz stark von der VerdrahtungskomplexitΣt, also von der Fanout-Verteilung in der Schaltung, abhΣngt.
Bei anwenderprogrammierbaren Gatearrays (FPGA's) ist die Situation komplizierter. Die Verdrahtung ist vorgegeben und wird anwenderspezifisch programmiert. Die Verdrahtungsresourcen k÷nnen nicht vergr÷▀ert werden und hΣufig zeigt sich erst nach stundenlangen Verdrahtungs- und Plazierversuchen, da▀ dieses Design nicht in das FPGA passt.
In dieser Arbeit soll versucht werden mit einem Fanout-Modell die Verdrahtbarkeit eines Entwurfs vorher abzuschΣtzen. Dabei wird angenommen, da▀ eine sehr komplexe Verdrahtung die Zahl der nutzbaren Logikbl÷cke reduziert und dies durch ein solches Fanout-Modell beschreibbar ist. Der Schwerpunkt der Arbeit wird in der Validierung des Modells durch viele Entwⁿrfe liegen.

Optimierung von Multiplexerstrukturen im High-Level-Synthesesystem CADDY

Aufwand:
Studienarbeit
Charakter der Arbeit:
Praktisch (Programmierung) und technisch
Das High-Level-Synthesesystem CADDY synthetisiert aus einer algorithmischen Beschreibung eine Rechnerarchitektur bestehend aus Steuerwerk, Operationseinheiten und Registern. Verbunden werden diese Teile durch Multiplexerestrukturen. In dieser Arbeit sollen die Multiplexerstrukturen optimiert werden und der FlΣchenverbrauch und die Verz÷gerungszeit der optimierten Strukturen bestimmt werden.

Entwurf, Simulation und Synthese eines Connection Controllers fⁿr einen ATM-Switch

Aufwand:
Studienarbeit
Charakter der Arbeit:
technisch
ATM (Asynchroner Transfer Modus) ist der ▄bertragungmodus fⁿr B-ESDN in dem ▄bertragungsdienste fⁿr Sprache, Ton und Bilder integriert sind un gilt als das Telekommunikationsprokokoll der Zukunft fⁿr lkale und fⁿr Weitverkehrsnetze. Ein ATM-Switch ist ein Verteilerelement, das eine bestimmte Anzahl Eingangsleitungen mit einer (meist gleichgro▀en) Anzahl Ausgangsleitungen verbinden kann. Aufgabe dieser Studienarbeit ist es, eine Verbindungs-Steuerung (Connection Controller) fⁿr einen ATM-Switch mit VHDL zu beschreiben, zu simulieren und zu synthetisieren. Der Connection Controller soll die Ansteuerung des ATM-Switch dadurch vereinfachen, da▀ er dessen Belegungszustand und die n÷tigen zeutgenauen Ansteuerungen Berⁿcksichtigt.
Die Arbeit wird hauptsΣchlich betreut von W. Lange, Sand 13 Raum 121.

Optimale Speicherorganisation und Adressberechnung bei Setze/Increment/Decrement - Zugriffen

Aufwand:
Studienarbeit
Charakter der Arbeit:
Theoretisch, praktisch und technisch
Fⁿr viele Anwendungen wird auf ein Array oder einen Speicher nur auf sehr einfache Weise zugegriffen. Entweder ist die Adresse eine Konstante (wird gesetzt) oder die bestehende Adresse wird incrementiert oder decrementiert. In dieser Arbeit soll ein Verfahren untersucht und implementiert werden, welches fⁿr derartige Anwendungen eine Speicherorganisation und eine Adressberechnung bestimmt, so da▀ die Adressberechnung sowohl extrem schnell also auch sehr klein ist, d.h. sehr wenig Hardware ben÷tigt. Die Grundarchitektur dafⁿr sind durch EXOR-Gatter rⁿckgekoppelte Schieberegister. Mit dieser Architektur lassen sich zyklische Increment- und Decrementfolgen erzeugen. Der kritische Pfad dieser Schaltung ist, unabhΣngig von der Bitbreite, nur ein Gatter und ein Multiplexer ! Diese Architekturen besitzen eine 1:1 Entsprechung als zyklische BinΣrcodes bzw. BCH-Codes, die auf dem Gebiet der Datenⁿbertragung, fehlersicheren Codierung, Fehlererkennung und Korrektur eingesetzt werden. Benutzt werden soll dieses Verfahren bei der Synthese von Speichern im Rahmen der High Level Synthese integrierter Schaltungen.

Folgende Themen werden zur Zeit bearbeitet:

Allokierung von Hintergrundspeicher

Die Zielarchitektur eines High-Level-Synthesesystems ist ein digitales System bestehend aus Steuerwerk, Datenpfad und Hintergrundspeichern. Viele Anwendungen fⁿr anwendungsspezifische digitale Hardware, aus dem Bereich der Signalverarbeitung, digitale Filter oder neuronale Netze, besitzen gro▀e Array-Strukturen, fⁿr die eine Auslagerung in SRAMs oder RegisterbΣnke geeignet ist. In diesem Projekt versuchen wir in einem Schritt vor der High-Level-Synthese automatisiert geeignete Variablen zum Auslagern im CDFG zu erkennen und die Speicher zu allokieren. Um dieses Projekt kⁿmmert sich besonders Claudia Oetting in ihrer Diplomarbeit.

Entwicklung eines Frontends fⁿr das High-Level-Synthesesystem CADDY zur Entwurfsumgebung CASTLE

Das High-Level-Synthesesystem CADDY entwirft automatisiert aus einer algorithmischen Beschreibung eines Systems (Verhaltensebene) eine digitale Schaltungsarchitektur (Register-Transfer-Ebene). CASTLE ist eine Entwurfsplatform fⁿr einen integrierten Systementwurf und Hardware-Software-Coentwurf. Ziel dieser Arbeit ist es, CADDY an CASTLE anzukoppeln. Dazu mⁿssen die relevanten Informationen aus der objektorientierten internen Darstellung in CASTLE gewonnen werden und als Flu▀graph ausgegeben werden.

Dieses Projekt wird zur Zeit von Martin Gall als Studienarbeit bearbeitet.

Entwicklung eines Simulationsmodells für den Hyperstone Mikroprozessor auf der Verhaltensebene

Der Entwurf von digitalen Systemen mit Unterstützung durch eine Entwurfsautomatisierung und der Entwurf von "eingebetteten System", also von Systemen mit Prozessoren und ASIC's, erfordert auch eine vollständige Systemsimulation. Dafür werden Simulationsmodelle auf der Verhaltensebene benötigt. Von Mikroprozessoren existieren bisher nur Simulationsmodelle auf der Gatter- oder RT-Ebene. Für eine Systemsimulation sind diese Modelle viel zu langsam. In dieser Arbeit soll ein Simulationsmodelle auf der Verhaltensebene für den Hyperstone-Mikroprozessor entwickelt werden. Der Hyperstone ist ein 32-Bit-Mikroprozessor mit RISC-ähnlicher Architektur, der auch in den Übungen und Praktika zur Vorlesung Automatisierungstechnik eingesetzt wird. Das Simulationsmodell soll in VHDL erstellt werden.

Dieses Projekt wird im Sommersemester '95 von Raphael Bachmann, Paul Novak und Stephan Schmitt bearbeitet


Peter Thole (thole@informatik.uni-tuebingen.de) (thole@informatik.uni-tuebingen.de)